草庐IT

sql - ActiveRecord::StatementInvalid。 PG错误

全部标签

ruby-on-rails - 防止实例上的 ActiveRecord save()

我有一个ActiveRecord模型对象Foo;它代表一个标准的数据库行。我希望能够显示该对象实例的修改版本。我想重用类本身,因为它已经具有我需要的所有Hook和方面。(例如:我已经有一个显示适当属性的View)。基本上我想克隆模型实例,修改它的一些属性,并将它反馈给调用者(View、测试等)。我不希望这些属性修改返回到数据库中。但是,我确实希望在克隆版本中包含id属性,因为它可以更轻松地处理路由助手。因此,我计划调用ActiveRecord::Base.clone(),手动设置克隆实例的ID,然后对新实例进行适当的属性更改。不过这让我很担心;修改后的实例上的一个save()和我的原始

ruby-on-rails - RVM 的 Rails 脚本段错误

我遇到了段错误。whichruby​​应该返回/usr/local/bin吗?maletor$railsgeneratemailerContactMailer/Users/maletor/.rvm/gems/ruby-1.9.2-p0/gems/mysql2-0.2.4/lib/mysql2/mysql2.bundle:[BUG]**Segmentationfault**ruby1.8.7(2009-06-12patchlevel174)[universal-darwin10.0]Aborttrapmaletor$whichrails/usr/bin/railsmaletor$geme

ruby-on-rails - 如何在 Rails/ActiveRecord 中同时使用多个聚合函数?

我想同时执行多个聚合函数,例如获取按状态分组的最大和最小id:Model.maximum(:id).minimum(:id).group(:status)这行不通(至少对于Rails3.1.1是这样)——你在最小调用时收到一个错误,说它没有在Fixnum上定义。NoMethodError:undefinedmethod`minimum'for22377:Fixnum我可以为它做原始sql-但只是想知道是否有更高级别/Rails选项...谢谢,克里斯 最佳答案 我有一个类似的问题,我在Rails4中使用groupwithpluck解决

ruby-on-rails - PostgreSQL 与 Rails ActiveRecord 中的多个匹配相似

我正在尝试使用以下查询从我的数据库中检索多条记录:User.where('nameilike?','%thomas%')这很好用。现在我想同时检索多条记录并尝试了这个(这在语法上似乎是不正确的):User.where('nameilikeany',['%thomas%','%james%','%martin%'])我做错了什么?所以澄清一下:我想检索与其中一个名称匹配的所有记录,所以它是我正在寻找的OR语句。 最佳答案 你可以这样做User.where('nameilikeany(array[?])',['%thomas%','%j

ruby-on-rails - Ruby on Rails,没有发现 Rakefile 错误

我在rails上安装了ruby​​,postgres。我安装了所有必需的gem文件,我创建了一个项目http://guides.rubyonrails.org/getting_started.html想要我在config/routes.rb添加了下面的代码Blog::Application.routes.drawdoresources:postsrootto:"welcome#index"end我正在尝试运行rakeroutes命令。但是我明白了rakeaborted!NoRakefilefound(lookingfor:rakefile,Rakefile,rakefile.rb,Ra

ruby-on-rails - Gem::Ext::BuildError:错误:无法构建 gem native 扩展。 postgresql 和 ROR

我需要在应用程序ROR的生产环境中安装postgresql,以便在将其与heroku一起使用后,但是当我尝试安装gem'pg'时,会触发以下错误。我是新手,所以我不知道该怎么做我正在使用ruby​​1.9.3p547(2014-05-14修订版45962)[i686-linux]railsrails3.2.19Ubuntu12.04gem文件来源'https://rubygems.org'gem'rails','3.2.19'#BundleedgeRailsinstead:#gem'rails',:git=>'git://github.com/rails/rails.git'gem'm

ruby-on-rails - Rails/Ruby/Postgres - LoadError 无法加载此类文件 -- pg_ext

我正在尝试使用下面的railsController调用一个Ruby脚本(它连接到一个postgres数据库),但是它似乎在加载一个PGgem文件时遇到问题。我已经将我的require语句设置为需要'pg'并尝试了绝对路径(需要/usr/local/rvm/gems/ruby-1.9.3-p194@railsTest/gems/pg-0.14.0/库/pg/)。文件“pg_ext”实际上存在于目录中。此外,我可以毫无问题地独立运行ruby​​脚本(dbrubyscript.rb),但是当将rails添加到这个等式时,它会出现cannotloadsuchfile--pg_ext错误。这里的

ruby - “运行失败跳转到方法定义”错误 : undefined method `current_line' for TextMate:Module

更新:我想通了。Ctrl-F仅在未选择我正在搜索的方法时有效。游标只需要在方法名中。我刚升级到TextMate2。当我选择一个方法并使用Ctrl+F转到它的定义时,我得到:>FailurerunningJumptoMethodDefinition这是痕迹:/Users/ilikepie/Library/ApplicationSupport/TextMate/Managed/Bundles/RubyonRails.tmbundle/Support/lib/rails/text_mate.rb:54:in`method_missing':undefinedmethod`current_li

ruby-on-rails - 奇怪的 ActiveRecord 问题——比如生成无效的 SQL

最近我们部署了一个新版本的应用程序,从那时起我们就发现ActiveRecord存在一些非常奇怪的问题。例如,这是它每天生成数百次的查询片段,通常是正确的:`entries`.`style`ASt1_r25,`entries`.`pdf_visibility`AS,`entries`.`web_visibility`ASt1_r27这不是打字错误,t1_r26不见了,虽然它应该在的地方有一个空格。但只有那一次。这也不是手写SQL,而是ActiveRecord编写查询并决定所有占位符变量。它同样拙劣地破坏了其他查询,将不应该留空(甚至不应该留空)的东西留空,但只是偶尔留空一次。大多数时候都

ruby - `save` 和 `save!` 是唯一持久化 ActiveRecord 对象的方法吗?

我正在尝试调试一些代码。一个奇怪的部分是before_save回调被调用了两次,尽管我只打算保存对象一次。为了追踪这是如何发生的,我在类中定义了这些方法:%w[savesave!].eachdo|method_name|define_method(method_name)do|*args|puts"whocalled'#{method_name}'?#{caller.first}"super(*args)endend从这个输出中,我只看到一个持久化调用。我相信save和save!是导致ActiveRecord持久化对象的唯一方法。据我所知,其他持久化方法依赖于这两者之一;例如,upda